package com.fitness.util;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.URL;
import java.net.URLConnection;


public class WxUtil {
	

	
	 //post请求
    public static String sendPost(String param, String url) {
         PrintWriter out = null;
         BufferedReader in = null;
         String result = "";
         try {
             URL realUrl = new URL(url);
             // 打开和URL之间的连接
             URLConnection conn = realUrl.openConnection();
             // 设置通用的请求属性
             conn.setRequestProperty("accept", "*/*");
             conn.setRequestProperty("connection", "Keep-Alive");
             conn.setRequestProperty("user-agent",
                       "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
             // 发送POST请求必须设置如下两行
             conn.setDoOutput(true);
             conn.setDoInput(true);
             // 获取URLConnection对象对应的输出流
             // out = new PrintWriter(conn.getOutputStream());
             out = new PrintWriter(new OutputStreamWriter(
                       conn.getOutputStream(), "utf-8"));
             // 发送请求参数
             out.print(param);
             // flush输出流的缓冲
             out.flush();
             // 定义BufferedReader输入流来读取URL的响应
             in = new BufferedReader(new InputStreamReader(
                       conn.getInputStream(), "UTF-8"));
             String line;
             while ((line = in.readLine()) != null) {
                  result += line;
             }
         } catch (Exception e) {
             System.out.println("发送 POST 请求出现异常！" + e);
             e.printStackTrace();
         }
         // 使用finally块来关闭输出流、输入流
         finally {
             try {
                  if (out != null) {
                       out.close();
                  }
                  if (in != null) {
                       in.close();
                  }
             } catch (IOException ex) {
                  ex.printStackTrace();
             }
         }
         return result;
    }
	
	/*生成永久二维码*/
    public static String getPerpetualQR(Object account,Object access_token){

         //获取数据的地址（微信提供）
         String url = "https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token="+access_token;

         //发送给微信服务器的数据
         String jsonStr = "{\"action_name\": \"QR_LIMIT_SCENE\", \"action_info\"：{\"scene\": {\"scene_id\": "+account+"}}}";

         //post请求得到返回数据（这里是封装过的，就是普通的java post请求）
         String response = sendPost(jsonStr, url);
         return response.toString();
    }
}
